home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 22
/
Amiga Format AFCD22 (Jan 1998, Issue 106).iso
/
-seriously_amiga-
/
shareware
/
programming
/
other
/
hunk
/
hoppers
/
pcq_12b.hop
< prev
next >
Wrap
Text File
|
1997-11-17
|
6KB
|
147 lines
;*************************************************************************
;** PCQ 1.2b **
;** Contributor: L.Lucius Sept 23rd 1995 **
;** Modified for HOp: Thomas Richter (thor) Nov 1st 1997 **
;** Function: Modify 68000 math routines to use 68020+ instructions. **
;*************************************************************************
;*************************************************************************
;
; DIVS
#code
#match
202F 0004 ; MOVE.L 0004(A7),D0
6A02 ; BPL.B 0008
4480 ; NEG.L D0
222F 0008 ; MOVE.L 0008(A7),D1
6A08 ; BPL.B 0016
4481 ; NEG.L D1
0A2F 0080 0004 ; EORI.B #80,0004(A7)
6100 008E ; BSR.W 00A6
4A2F 0004 ; TST.B 0004(A7)
6A02 ; BPL.B 0022
4480 ; NEG.L D0
4E75 ; RTS
;
; MULS()
;
202F 0004 ; MOVE.L 0004(A7),D0
6A02 ; BPL.B 002C
4480 ; NEG.L D0
222F 0008 ; MOVE.L 0008(A7),D1
6A08 ; BPL.B 003A
4481 ; NEG.L D1
0A2F 0080 0004 ; EORI.B #80,0004(A7)
614E ; BSR.B 008A
4A2F 0004 ; TST.B 0004(A7)
6A02 ; BPL.B 0044
4480 ; NEG.L D0
4E75 ; RTS
;
; MODS()
;
202F 0004 ; MOVE.L 0004(A7),D0
6A02 ; BPL.B 004E
4480 ; NEG.L D0
222F 0008 ; MOVE.L 0008(A7),D1
6A02 ; BPL.B 0056
4481 ; NEG.L D1
614E ; BSR.B 00A6
2001 ; MOVE.L D1,D0
4A2F 0004 ; TST.B 0004(A7)
6A02 ; BPL.B 0062
4480 ; NEG.L D0
4E75 ; RTS
;
; DIVU
;
202F 0004 ; MOVE.L 0004(A7),D0
222F 0008 ; MOVE.L 0008(A7),D1
6138 ; BSR.B 00A6
4E75 ; RTS
;
; MULU
;
202F 0004 ; MOVE.L 0004(A7),D0
222F 0008 ; MOVE.L 0008(A7),D1
6110 ; BSR.B 008A
4E75 ; RTS
;
; MODU
;
202F 0004 ; MOVE.L 0004(A7),D0
222F 0008 ; MOVE.L 0008(A7),D1
6120 ; BSR.B 00A6
2001 ; MOVE.L D1,D0
4E75 ; RTS
;
;
#replace
;
; DIVS()
;
222F 0004 ; MOVE.L 0004(A7),D0
4C6F 0800 0008 ; DIVS.L 0008(A7),D0
4E75 ; RTS
6A08 ; BPL.B 0016
4481 ; NEG.L D1
0A2F 0080 0004 ; EORI.B #80,0004(A7)
6100 008E ; BSR.W 00A6
4A2F 0004 ; TST.B 0004(A7)
6A02 ; BPL.B 0022
4480 ; NEG.L D0
4E75 ; RTS
;
; MULS
;
202F 0004 ; MOVE.L 0004(A7),D0
4C2F 0800 0008 ; MULS.L 0008(A7),D0
4E75 ; RTS
6A08 ; BPL.B 003A
4481 ; NEG.L D1
0A2F 0080 0004 ; EORI.B #80,0004(A7)
614E ; BSR.B 008A
4A2F 0004 ; TST.B 0004(A7)
6A02 ; BPL.B 0044
4480 ; NEG.L D0
4E75 ; RTS
;
; MODS
;
202F 0004 ; MOVE.L 0004(A7),D0
4C6F 0801 0008 ; DIVSL.L 0008(A7),D1:D0
C141 ; EXG D0,D1
4E75 ; RTS
4481 ; NEG.L D1
614E ; BSR.B 00A6
2001 ; MOVE.L D1,D0
4A2F 0004 ; TST.B 0004(A7)
6A02 ; BPL.B 0062
4480 ; NEG.L D0
4E75 ; RTS
;
; DIVU
;
202F 0004 ; MOVE.L 0004(A7),D0
4C6F 0000 0008 ; DIVU.L 0008(A7),D0
4E75 ; RTS
;
; MULU
;
202F 0004 ; MOVE.L 0004(A7),D0
4C2F 0000 0008 ; MULU.L 0008(A7),D0
4E75 ; RTS
;
; MODU
;
202F 0004 ; MOVE.L 0004(A7),D0
4C6F 0001 0008 ; DIVUL.L 0008(A7),D1:D0
C141 ; EXG D0,D1
4E75 ; RTS
4C01 0000 ; MULU.L D1,D0
4E75 ; RTS
#end